package com.nmsl.medicine.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.nmsl.common.annotation.Excel;
import com.nmsl.common.core.domain.BaseEntity;

/**
 * 药品出库记录对象 medicine_storage_out_record
 * 
 * @author ruoyi
 * @date 2025-02-20
 */
public class MedicineStorageOutRecord extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 出库单号 */
    private Long storageOutId;

    /** 出库类型 */
    @Excel(name = "出库类型")
    private String storageOutType;

    /** 出库日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "出库日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date storageOutDate;

    /** 员工id （员工表  药品管理员（出库）） */
    @Excel(name = "员工id ", readConverterExp = "员=工表,药=品管理员（出库")
    private String medicineAdminOut;

    /** 员工id    （员工表  药品管理员（制单）） */
    @Excel(name = "员工id    ", readConverterExp = "员=工表,药=品管理员（制单")
    private String medicineAdminOrder;

    /** 制单日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "制单日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date orderDate;

    /** 审核状态 */
    @Excel(name = "审核状态")
    private String reviewStatus;

    /** 员工id   （员工表  药品管理员（审核）） */
    @Excel(name = "员工id   ", readConverterExp = "员=工表,药=品管理员（审核")
    private String medicineAdminReview;

    /** 审核日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "审核日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date reviewDate;

    /** 备注 */
    @Excel(name = "备注")
    private String remarks;

    /** 采购价 */
    @Excel(name = "采购价")
    private Long buyMoney;

    /** 发售价 */
    @Excel(name = "发售价")
    private Long sellMoney;

    /** 扩展字段3 */
    private String ext3;

    /** 扩展字段4 */
    private String ext4;

    /** 扩展字段5 */
    private String ext5;

    public void setStorageOutId(Long storageOutId) 
    {
        this.storageOutId = storageOutId;
    }

    public Long getStorageOutId() 
    {
        return storageOutId;
    }
    public void setStorageOutType(String storageOutType) 
    {
        this.storageOutType = storageOutType;
    }

    public String getStorageOutType() 
    {
        return storageOutType;
    }
    public void setStorageOutDate(Date storageOutDate) 
    {
        this.storageOutDate = storageOutDate;
    }

    public Date getStorageOutDate() 
    {
        return storageOutDate;
    }
    public void setMedicineAdminOut(String medicineAdminOut) 
    {
        this.medicineAdminOut = medicineAdminOut;
    }

    public String getMedicineAdminOut() 
    {
        return medicineAdminOut;
    }
    public void setMedicineAdminOrder(String medicineAdminOrder) 
    {
        this.medicineAdminOrder = medicineAdminOrder;
    }

    public String getMedicineAdminOrder() 
    {
        return medicineAdminOrder;
    }
    public void setOrderDate(Date orderDate) 
    {
        this.orderDate = orderDate;
    }

    public Date getOrderDate() 
    {
        return orderDate;
    }
    public void setReviewStatus(String reviewStatus) 
    {
        this.reviewStatus = reviewStatus;
    }

    public String getReviewStatus() 
    {
        return reviewStatus;
    }
    public void setMedicineAdminReview(String medicineAdminReview) 
    {
        this.medicineAdminReview = medicineAdminReview;
    }

    public String getMedicineAdminReview() 
    {
        return medicineAdminReview;
    }
    public void setReviewDate(Date reviewDate) 
    {
        this.reviewDate = reviewDate;
    }

    public Date getReviewDate() 
    {
        return reviewDate;
    }
    public void setRemarks(String remarks) 
    {
        this.remarks = remarks;
    }

    public String getRemarks() 
    {
        return remarks;
    }
    public void setBuyMoney(Long buyMoney) 
    {
        this.buyMoney = buyMoney;
    }

    public Long getBuyMoney() 
    {
        return buyMoney;
    }
    public void setSellMoney(Long sellMoney) 
    {
        this.sellMoney = sellMoney;
    }

    public Long getSellMoney() 
    {
        return sellMoney;
    }
    public void setExt3(String ext3) 
    {
        this.ext3 = ext3;
    }

    public String getExt3() 
    {
        return ext3;
    }
    public void setExt4(String ext4) 
    {
        this.ext4 = ext4;
    }

    public String getExt4() 
    {
        return ext4;
    }
    public void setExt5(String ext5) 
    {
        this.ext5 = ext5;
    }

    public String getExt5() 
    {
        return ext5;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("storageOutId", getStorageOutId())
            .append("storageOutType", getStorageOutType())
            .append("storageOutDate", getStorageOutDate())
            .append("medicineAdminOut", getMedicineAdminOut())
            .append("medicineAdminOrder", getMedicineAdminOrder())
            .append("orderDate", getOrderDate())
            .append("reviewStatus", getReviewStatus())
            .append("medicineAdminReview", getMedicineAdminReview())
            .append("reviewDate", getReviewDate())
            .append("remarks", getRemarks())
            .append("buyMoney", getBuyMoney())
            .append("sellMoney", getSellMoney())
            .append("ext3", getExt3())
            .append("ext4", getExt4())
            .append("ext5", getExt5())
            .toString();
    }
}
